package com.moli.iov.sys.remote;

import com.moli.iov.model.dto.req.PageExtend;
import com.moli.iov.rest.RestResponse;
import com.moli.iov.sys.model.dto.req.UserThirdDto;
import com.moli.iov.sys.model.dto.res.UserRoleDto;
import com.moli.iov.sys.model.po.User;

/**
 * <p>
 * 用户业务  第三方 调用
 * </p>
 *
 * @author zql
 * @since 2019/9/21 10:33
 */
public interface IUserThirdRemoteService {

  /**
   * 分页查询用户列表
   * @param userThirdDto
   * @return
   */
  RestResponse<PageExtend<User>> listUserOfPage(UserThirdDto userThirdDto);

  /**
   * 添加用户
   * @param userThirdDto
   * @return
   */
  RestResponse saveUser(UserThirdDto userThirdDto);

  /**
   * 修改用户
   * @param userThirdDto
   * @return
   */
  RestResponse updateUser(UserThirdDto userThirdDto);

  /**
   * 重置密码
   * @param userThirdDto
   * @return
   */
  RestResponse resetPwd(UserThirdDto userThirdDto);

  /**
   * 修改密码
   * @param userThirdDto
   * @return
   */
  RestResponse updatePwd(UserThirdDto userThirdDto);

  /**
   * 查询用户角色列表
   * @param userThirdDto
   * @return
   */
  RestResponse<UserRoleDto> getUserRoleByAccount(UserThirdDto userThirdDto);

}
